package cn.fbs.model;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;;
import io.swagger.annotations.ApiModelProperty;;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.ObjectOutputStream;
import java.util.Date;

/**
 *
 *
 * @author 赵晓宇
 * @date   2021-02-02
 */
@ApiModel("图像信息")
public class TImageInfo {



    public TImageInfo myClone() throws IOException {
        ByteArrayOutputStream baos = new ByteArrayOutputStream();
        ObjectOutputStream oos = new ObjectOutputStream(baos);
        oos.writeObject(this);
        ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(baos.toByteArray());

        return null;
    }

    /**
     * id
     */
    @ApiModelProperty(value = "id",example = "1")
    private Long id;

    /**
     * 文件名称
     */
    @ApiModelProperty(value = "文件名称")
    private String fileName;


    /**
     * 文件保存链接
     */
    @ApiModelProperty(value = "文件保存链接")
    private String fileUrl;

    /**
     * 拍摄时间
     */
    @ApiModelProperty(value = "拍摄时间")
    @JsonFormat(pattern = "yyyy/MM/dd HH:mm:ss",timezone = "GMT+8")
    private Date shotDate;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy/MM/dd HH:mm:ss",timezone = "GMT+8")
    private Date createDate;

    /**
     * 图像来源
     */
    @ApiModelProperty(value = "图像来源")
    private String source;

    /**
     * 文件大小
     */
    @ApiModelProperty(value = "文件大小",example = "1")
    private Integer fileSize;

    /**
     * 文件类型jpg,png,mp4
     */
    @ApiModelProperty(value = "文件类型jpg,png,mp4")
    private String fileType;

    /**
     * 操作人
     */
    @ApiModelProperty(value = "操作人")
    private String operator;

    /**
     * 修改时间
     */
    @ApiModelProperty(value = "修改时间")
    @JsonFormat(pattern = "yyyy/MM/dd HH:mm:ss",timezone = "GMT+8")
    private Date updateDate;

    /**
     * 图片尺寸
     */
    @ApiModelProperty(value = "图片尺寸")
    private String imageSize;

    /**
     * 上传文件名称
     */
    @ApiModelProperty(value = "上传文件名称")
    private String uploadFileName;

    /**
     * 拍摄平台外键
     */
    @ApiModelProperty(value = "拍摄平台外键",example = "1")
    private Long platformId;

    /**
     * 传感器类型外键
     */
    @ApiModelProperty(value = "传感器类型外键",example = "1")
    private Long sensorId;

    /**
     * 目标序号
     */

    @ApiModelProperty(value = "目标序号")
    private String targetType;


    /**
     * 浏览量
     */
    @ApiModelProperty(value = "浏览量",example = "1")
    private Long viewNumber;

    /**
     * 下载量
     */
    @ApiModelProperty(value = "下载量",example = "1")
    private Long downloads;

    /**
     * 描述
     */
    @ApiModelProperty(value = "描述")
    private String memo;

    /**
     * 0素材 1产品
     */
    @ApiModelProperty(value = "0素材 1产品",example = "1")
    private Byte isProduct;

    /**
     * 是否审核 1否，2是
     */
    @ApiModelProperty(value = "是否审核 1否，2是",example = "1")
    private Integer isExamine;

    /**
     * 缩略图
     */
    @ApiModelProperty(value = "缩略图")
    private String thumbnail;

    @ApiModelProperty(value = "侦照对象名称")
    private String zzdx;

    /**
     * 文件名称
     */
    @ApiModelProperty(value = "任务名称")
    private String taskName;

    /**
     * 地理经度
     */
    @ApiModelProperty(value = "地理经度")
    private String longitude;

    /**
     * 地理纬度
     */
    @ApiModelProperty(value = "地理纬度")
    private String latitude;

    @ApiModelProperty(value = "部队内码")
    private String bdnm;
    @ApiModelProperty(value = "武器装备编号")
    private String wqzbbh;

    public String getLongitude() {
        return longitude;
    }

    public void setLongitude(String longitude) {
        this.longitude = longitude;
    }

    public String getLatitude() {
        return latitude;
    }

    public void setLatitude(String latitude) {
        this.latitude = latitude;
    }

    public String getTaskName() {
        return taskName;
    }

    public void setTaskName(String taskName) {
        this.taskName = taskName;
    }

    public String getZzdx() {
        return zzdx;
    }

    public void setZzdx(String zzdx) {
        this.zzdx = zzdx;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getFileName() {
        return fileName;
    }

    public void setFileName(String fileName) {
        this.fileName = fileName == null ? null : fileName.trim();
    }

    public String getFileUrl() {
        return fileUrl;
    }

    public void setFileUrl(String fileUrl) {
        this.fileUrl = fileUrl == null ? null : fileUrl.trim();
    }

    public Date getShotDate() {
        return shotDate;
    }

    public void setShotDate(Date shotDate) {
        this.shotDate = shotDate;
    }

    public Date getCreateDate() {
        return createDate;
    }

    public void setCreateDate(Date createDate) {
        this.createDate = createDate;
    }

    public String getSource() {
        return source;
    }

    public void setSource(String source) {
        this.source = source == null ? null : source.trim();
    }

    public Integer getFileSize() {
        return fileSize;
    }

    public void setFileSize(Integer fileSize) {
        this.fileSize = fileSize;
    }

    public String getFileType() {
        return fileType;
    }

    public void setFileType(String fileType) {
        this.fileType = fileType == null ? null : fileType.trim();
    }

    public String getOperator() {
        return operator;
    }

    public void setOperator(String operator) {
        this.operator = operator == null ? null : operator.trim();
    }

    public Date getUpdateDate() {
        return updateDate;
    }

    public void setUpdateDate(Date updateDate) {
        this.updateDate = updateDate;
    }

    public String getImageSize() {
        return imageSize;
    }

    public void setImageSize(String imageSize) {
        this.imageSize = imageSize == null ? null : imageSize.trim();
    }

    public String getUploadFileName() {
        return uploadFileName;
    }

    public void setUploadFileName(String uploadFileName) {
        this.uploadFileName = uploadFileName == null ? null : uploadFileName.trim();
    }

    public Long getPlatformId() {
        return platformId;
    }

    public void setPlatformId(Long platformId) {
        this.platformId = platformId;
    }

    public Long getSensorId() {
        return sensorId;
    }

    public void setSensorId(Long sensorId) {
        this.sensorId = sensorId;
    }

    public String getTargetType() {
        return targetType;
    }

    public void setTargetType(String targetType) {
        this.targetType = targetType;
    }

    public Long getViewNumber() {
        return viewNumber;
    }

    public void setViewNumber(Long viewNumber) {
        this.viewNumber = viewNumber;
    }

    public Long getDownloads() {
        return downloads;
    }

    public void setDownloads(Long downloads) {
        this.downloads = downloads;
    }

    public String getMemo() {
        return memo;
    }

    public void setMemo(String memo) {
        this.memo = memo == null ? null : memo.trim();
    }

    public Byte getIsProduct() {
        return isProduct;
    }

    public void setIsProduct(Byte isProduct) {
        this.isProduct = isProduct;
    }

    public Integer getIsExamine() {
        return isExamine;
    }

    public void setIsExamine(Integer isExamine) {
        this.isExamine = isExamine;
    }

    public String getThumbnail() {
        return thumbnail;
    }

    public void setThumbnail(String thumbnail) {
        this.thumbnail = thumbnail == null ? null : thumbnail.trim();
    }

    public String getBdnm() {
        return bdnm;
    }

    public void setBdnm(String bdnm) {
        this.bdnm = bdnm;
    }

    public String getWqzbbh() {
        return wqzbbh;
    }

    public void setWqzbbh(String wqzbbh) {
        this.wqzbbh = wqzbbh;
    }
}